package leetcode13

// 倒序,右边大于左边用减法
func romanToInt(s string) int {
	var _map = map[byte]int{
		'I': 1,
		'V': 5,
		'X': 10,
		'L': 50,
		'C': 100,
		'D': 500,
		'M': 1000,
	}
	// LVIII 58
	var (
		res int
		pre int
	)

	for i := len(s) - 1; i >= 0; i-- {
		if _map[s[i]] >= pre {
			res += _map[s[i]]
		} else {
			res -= _map[s[i]]
		}
		pre = _map[s[i]]
	}
	return res
}
